const char keymap_ascii_raw[] =
"xkb_keymap {\n"
"xkb_keycodes \"ascii\" {\n"
"	minimum = 8;\n"
"	maximum = 127;\n"
"\n"
"	<BKSP> = 8;\n"
"	<TAB>  = 9;\n"
"	<RTRN> = 10;\n"
"	<ESC>  = 27;\n"
"	<SPCE> = 32;\n"
"	<EXCL> = 33;\n"
"	<QDBL> = 34;\n"
"	<HASH> = 35;\n"
"	<DOLL> = 36;\n"
"	<PCNT> = 37;\n"
"	<AMP>  = 38;\n"
"	<APOS> = 39;\n"
"	<LPAR> = 40;\n"
"	<RPAR> = 41;\n"
"	<STAR> = 42;\n"
"	<PLUS> = 43;\n"
"	<COMM> = 44;\n"
"	<MIN>  = 45;\n"
"	<PRD>  = 46;\n"
"	<FWSL> = 47;\n"
"	<NUM0> = 48;\n"
"	<NUM1> = 49;\n"
"	<NUM2> = 50;\n"
"	<NUM3> = 51;\n"
"	<NUM4> = 52;\n"
"	<NUM5> = 53;\n"
"	<NUM6> = 54;\n"
"	<NUM7> = 55;\n"
"	<NUM8> = 56;\n"
"	<NUM9> = 57;\n"
"	<COLN> = 58;\n"
"	<SCLN> = 59;\n"
"	<LESS> = 60;\n"
"	<EQL>  = 61;\n"
"	<GRTR> = 62;\n"
"	<QUES> = 63;\n"
"	<ATSN> = 64;\n"
"	<KEYA> = 65;\n"
"	<KEYB> = 66;\n"
"	<KEYC> = 67;\n"
"	<KEYD> = 68;\n"
"	<KEYE> = 69;\n"
"	<KEYF> = 70;\n"
"	<KEYG> = 71;\n"
"	<KEYH> = 72;\n"
"	<KEYI> = 73;\n"
"	<KEYJ> = 74;\n"
"	<KEYK> = 75;\n"
"	<KEYL> = 76;\n"
"	<KEYM> = 77;\n"
"	<KEYN> = 78;\n"
"	<KEYO> = 79;\n"
"	<KEYP> = 80;\n"
"	<KEYQ> = 81;\n"
"	<KEYR> = 82;\n"
"	<KEYS> = 83;\n"
"	<KEYT> = 84;\n"
"	<KEYU> = 85;\n"
"	<KEYV> = 86;\n"
"	<KEYW> = 87;\n"
"	<KEYX> = 88;\n"
"	<KEYY> = 89;\n"
"	<KEYZ> = 90;\n"
"	<LBRA> = 91;\n"
"	<BKSL> = 92;\n"
"	<RBRA> = 93;\n"
"	<CRCM> = 94;\n"
"	<UNDR> = 95;\n"
"	<GRV>  = 96;\n"
"	<KEYa> = 97;\n"
"	<KEYb> = 98;\n"
"	<KEYc> = 99;\n"
"	<KEYd> = 100;\n"
"	<KEYe> = 101;\n"
"	<KEYf> = 102;\n"
"	<KEYg> = 103;\n"
"	<KEYh> = 104;\n"
"	<KEYi> = 105;\n"
"	<KEYj> = 106;\n"
"	<KEYk> = 107;\n"
"	<KEYl> = 108;\n"
"	<KEYm> = 109;\n"
"	<KEYn> = 110;\n"
"	<KEYo> = 111;\n"
"	<KEYp> = 112;\n"
"	<KEYq> = 113;\n"
"	<KEYr> = 114;\n"
"	<KEYs> = 115;\n"
"	<KEYt> = 116;\n"
"	<KEYu> = 117;\n"
"	<KEYv> = 118;\n"
"	<KEYw> = 119;\n"
"	<KEYx> = 120;\n"
"	<KEYy> = 121;\n"
"	<KEYz> = 122;\n"
"	<LBRC> = 123;\n"
"	<BAR>  = 124;\n"
"	<RBRC> = 125;\n"
"	<TLDE> = 126;\n"
"};\n"
"\n"
"xkb_types \"flat\" {\n"
"	virtual_modifiers NumLock;\n"
"\n"
"	type \"ONE_LEVEL\" {\n"
"		modifiers =none;\n"
"		level_name[1] = \"Any\";\n"
"	};\n"
"	type \"TWO_LEVEL\" {\n"
"		modifiers = Shift;\n"
"		map[Shift] = Level2;\n"
"		level_name[Level1] = \"Base\";\n"
"		level_name[Level2] = \"Shift\";\n"
"	};\n"
"	type \"ALPHABETIC\" {\n"
"		modifiers = Shift+Lock;\n"
"		map[Shift] = Level2;\n"
"		map[Lock] = Level2;\n"
"		level_name[Level1] = \"Base\";\n"
"		level_name[Level2] = \"Caps\";\n"
"	};\n"
"	type \"KEYPAD\" {\n"
"		modifiers = Shift+NumLock;\n"
"		map[None] = Level1;\n"
"		map[Shift] = Level2;\n"
"		map[NumLock] = Level2;\n"
"		map[Shift+NumLock] = Level1;\n"
"		level_name[Level1] = \"Base\";\n"
"		level_name[Level2] = \"Number\";\n"
"	};\n"
"};\n"
"\n"
"xkb_compatibility \"basic\" {\n"
"    virtual_modifiers NumLock;\n"
"\n"
"    interpret.useModMapMods = AnyLevel;\n"
"    interpret.repeat = False;\n"
"    interpret.locking = False;\n"
"    interpret Shift_Lock+AnyOf(Shift+Lock) {\n"
"        action = LockMods(modifiers=Shift);\n"
"    };\n"
"};\n"
"\n"
"xkb_symbols \"ascii\" {\n"
"	name[Group1]=\"ASCII RAW\";\n"
"\n"
"	key <BKSP> {[ BackSpace ]};\n"
"	key <TAB>  {[ Tab ]};\n"
"	key <RTRN> {[ Return ]};\n"
"	key <ESC>  {[ Escape ]};\n"
"	key <SPCE> {[ space ]};\n"
"	key <EXCL> {[ exclam ]};\n"
"	key <QDBL> {[ quotedbl ]};\n"
"	key <HASH> {[ numbersign ]};\n"
"	key <DOLL> {[ dollar ]};\n"
"	key <PCNT> {[ percent ]};\n"
"	key <AMP>  {[ ampersand ]};\n"
"	key <APOS> {[ apostrophe ]};\n"
"	key <LPAR> {[ parenleft ]};\n"
"	key <RPAR> {[ parenright ]};\n"
"	key <STAR> {[ asterisk ]};\n"
"	key <PLUS> {[ plus ]};\n"
"	key <COMM> {[ comma ]};\n"
"	key <MIN>  {[ minus ]};\n"
"	key <PRD>  {[ period ]};\n"
"	key <FWSL> {[ slash ]};\n"
"	key <NUM0> {[ 0 ]};\n"
"	key <NUM1> {[ 1 ]};\n"
"	key <NUM2> {[ 2 ]};\n"
"	key <NUM3> {[ 3 ]};\n"
"	key <NUM4> {[ 4 ]};\n"
"	key <NUM5> {[ 5 ]};\n"
"	key <NUM6> {[ 6 ]};\n"
"	key <NUM7> {[ 7 ]};\n"
"	key <NUM8> {[ 8 ]};\n"
"	key <NUM9> {[ 9 ]};\n"
"	key <COLN> {[ colon ]};\n"
"	key <SCLN> {[ semicolon ]};\n"
"	key <LESS> {[ less ]};\n"
"	key <EQL>  {[ equal ]};\n"
"	key <GRTR> {[ greater ]};\n"
"	key <QUES> {[ question ]};\n"
"	key <ATSN> {[ at ]};\n"
"	key <KEYA> {[ A ]};\n"
"	key <KEYB> {[ B ]};\n"
"	key <KEYC> {[ C ]};\n"
"	key <KEYD> {[ D ]};\n"
"	key <KEYE> {[ E ]};\n"
"	key <KEYF> {[ F ]};\n"
"	key <KEYG> {[ G ]};\n"
"	key <KEYH> {[ H ]};\n"
"	key <KEYI> {[ I ]};\n"
"	key <KEYJ> {[ J ]};\n"
"	key <KEYK> {[ K ]};\n"
"	key <KEYL> {[ L ]};\n"
"	key <KEYM> {[ M ]};\n"
"	key <KEYN> {[ N ]};\n"
"	key <KEYO> {[ O ]};\n"
"	key <KEYP> {[ P ]};\n"
"	key <KEYQ> {[ Q ]};\n"
"	key <KEYR> {[ R ]};\n"
"	key <KEYS> {[ S ]};\n"
"	key <KEYT> {[ T ]};\n"
"	key <KEYU> {[ U ]};\n"
"	key <KEYV> {[ V ]};\n"
"	key <KEYW> {[ W ]};\n"
"	key <KEYX> {[ X ]};\n"
"	key <KEYY> {[ Y ]};\n"
"	key <KEYZ> {[ Z ]};\n"
"	key <LBRA> {[ bracketleft ]};\n"
"	key <BKSL> {[ backslash ]};\n"
"	key <RBRA> {[ bracketright ]};\n"
"	key <CRCM> {[ asciicircum ]};\n"
"	key <UNDR> {[ underscore ]};\n"
"	key <GRV>  {[ grave ]};\n"
"	key <KEYa> {[ a ]};\n"
"	key <KEYb> {[ b ]};\n"
"	key <KEYc> {[ c ]};\n"
"	key <KEYd> {[ d ]};\n"
"	key <KEYe> {[ e ]};\n"
"	key <KEYf> {[ f ]};\n"
"	key <KEYg> {[ g ]};\n"
"	key <KEYh> {[ h ]};\n"
"	key <KEYi> {[ i ]};\n"
"	key <KEYj> {[ j ]};\n"
"	key <KEYk> {[ k ]};\n"
"	key <KEYl> {[ l ]};\n"
"	key <KEYm> {[ m ]};\n"
"	key <KEYn> {[ n ]};\n"
"	key <KEYo> {[ o ]};\n"
"	key <KEYp> {[ p ]};\n"
"	key <KEYq> {[ q ]};\n"
"	key <KEYr> {[ r ]};\n"
"	key <KEYs> {[ s ]};\n"
"	key <KEYt> {[ t ]};\n"
"	key <KEYu> {[ u ]};\n"
"	key <KEYv> {[ v ]};\n"
"	key <KEYw> {[ w ]};\n"
"	key <KEYx> {[ x ]};\n"
"	key <KEYy> {[ y ]};\n"
"	key <KEYz> {[ z ]};\n"
"	key <LBRC> {[ braceleft ]};\n"
"	key <BAR>  {[ bar ]};\n"
"	key <RBRC> {[ braceright ]};\n"
"	key <TLDE> {[ asciitilde ]};\n"
"};\n"
"};\n";
